import java.util.Arrays;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) {

        Integer[] array1 = Integers.random(100, 1000, 9999);
        Integer[] array2 = Arrays.copyOf(array1, array1.length);
        Integer[] array3 = Arrays.copyOf(array1, array1.length);

        BubbleSort<Integer> bubbleSort = new BubbleSort<>(new Comparator<>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o1 - o2;
            }
        });

        bubbleSort.imp1(array1);
        Asserts.test(Integers.isAscOrder(array1));

        bubbleSort.imp2(array2);
        Asserts.test(Integers.isAscOrder(array2));

        bubbleSort.imp3(array3);
        Asserts.test(Integers.isAscOrder(array3));
    }
}
